#ifndef ONELINETEMPLATE_H
#define ONELINETEMPLATE_H
#include <string>
#include <map>
#include <vector>
using namespace std;

typedef enum {
    DATATYPE_CONSTTEXT,
    DATATYPE_VARINDEX
} OneLineTemplateDataType;

typedef struct
{
    OneLineTemplateDataType dataType;
    string dataVal;
} OneLineTemplateNode;

typedef vector<OneLineTemplateNode> OneLineTemplate ;
typedef map<string, string>         SymTable        ;

int     OLTInit(const char* text             , OneLineTemplate *tpl)     ;
string  OLTFormat(const OneLineTemplate *tpl , const SymTable *symtable) ;
string  OLTFormat(const char* text           , const SymTable *symtable) ;

#endif /* end of include guard: ONELINETEMPLATE_H */
